# 元组和列表非常相似，列表可变、元组不可变
# 定义: 被定义在一个小括号(元素，元素，元素)， 称为元组

data_01 = ()
data_02 = ( "nginx", "httpd", "IIS" )
data_03 = ( ("MySQL", "Oracle"), ("redis", "etcd"), ("docker", "podman") )
data_04 = ( ["linux", "unix"], ["macos", "windows"] )

print(type(data_01), type(data_02), type(data_03), type(data_04))

#定义单元素的元组
#不加逗号是字符串类型，加个逗号则为元组
data_05 = ("WWW.1.com",)
print(type(data_05))

data_06 = ("linux", "mysql")
print(data_06[0])

#定义的单个元组中的变量是不可修改的，但是在元组中套列表则可以修改列表中的值
data_07 = ( ["linux", "unix"], ["macos", "windows"] )
data_07[0][-1] = "AIX"
print(data_07)


#遍历元组
data_08 = ( "nginx", "httpd", "tomcat", "IIS" )
for i in data_08:
    print("---> %s" % i)
#元组中套元组
data_09 = ( ("10.1.1.1", "node01"), ("10.1.1.2", "node02"), ("10.1.1.3", "node03") )
for i, j in data_09:
    print("IP地址: %s  主机名: %s" % (i, j))

#元组中套列表
data_10 = ( ["10.1.1.1", "node01"], ["10.1.1.2", "node02"], ["10.1.1.3", "node03"] )

for i, j in data_10:
    print("IP地址: %s 主机名: %s" % (i, j))
